package com.whw.fy.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.util.Date;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import javax.persistence.Transient;

@ApiModel(value = "com-whw-fy-entity-Staff")
@Data
public class Staff {
    /**
     * 员工工号
     */
    @ApiModelProperty(value = "员工工号")
    private Integer staffId;

    /**
     * 员工密码
     */
    @ApiModelProperty(value = "员工密码")
    private String staffPwd;

    /**
     * 员工姓名
     */
    @ApiModelProperty(value = "员工姓名")
    private String staffName;

    /**
     * 员工职务
     */
    @ApiModelProperty(value = "员工职务")
    private String staffJob;

    /**
     * 员工电话
     */
    @ApiModelProperty(value = "员工电话")
    private String staffCall;

    /**
     * 员工邮箱
     */
    @ApiModelProperty(value = "员工邮箱")
    private String staffEmail;

    /**
     * 员工身份证号
     */
    @ApiModelProperty(value = "员工身份证号")
    private String staffIdcard;

    /**
     * 员工教育程度
     */
    @ApiModelProperty(value = "员工教育程度")
    private String staffEdu;

    /**
     * 员工毕业学校
     */
    @ApiModelProperty(value = "员工毕业学校")
    private String staffSchool;

    /**
     * 员工专业
     */
    @ApiModelProperty(value = "员工专业")
    private String staffMajor;

    /**
     * 权限等级
     */
    @ApiModelProperty(value = "权限等级")
    private Integer staffJurisdiction;

    /**
     * 员工openId
     */
    @ApiModelProperty(value = "员工openId")
    private String staffOpenid;

    /**
     * 员工性别
     */
    @ApiModelProperty(value = "员工性别")
    private String staffSex;

    /**
     * 员工出生日期
     */
    @ApiModelProperty(value = "员工出生日期")
    @JsonFormat(pattern = "yyyy-MM-dd",timezone="GMT+8")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date staffBirth;


    /**
     * 员工民族
     */
    @ApiModelProperty(value = "员工民族")
    private String staffNation;

    /**
     * 员工政治面貌
     */
    @ApiModelProperty(value = "员工政治面貌")
    private String staffPolitics;

    /**
     * 员工婚姻状况
     */
    @ApiModelProperty(value = "员工婚姻状况")
    private String staffMarry;

    /**
     * 户口所在地
     */
    @ApiModelProperty(value = "户口所在地")
    private String staffResidence;

    /**
     * 居住地址
     */
    @ApiModelProperty(value = "居住地址")
    private String staffLive;

    /**
     * 家庭成员信息
     */
    @ApiModelProperty(value = "家庭成员信息")
    private String staffFamily;

    /**
     * 紧急联系方式
     */
    @ApiModelProperty(value = "紧急联系方式")
    private String staffContact;

    /**
     * 毕业时间
     */
    @ApiModelProperty(value = "毕业时间")
    @JsonFormat(pattern = "yyyy-MM-dd",timezone="GMT+8")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date staffGraduationtime;

    /**
     * 工作履历
     */
    @ApiModelProperty(value = "工作履历")
    private String staffJobresume;

    /**
     * 入职时间
     */
    @ApiModelProperty(value = "入职时间")
    @JsonFormat(pattern = "yyyy-MM-dd",timezone="GMT+8")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date staffHiredate;

    /**
     * 职务
     */
    @ApiModelProperty(value = "职务")
    private String staffDuty;

    /**
     * 职称
     */
    @ApiModelProperty(value = "职称")
    private String staffTitle;

    /**
     * 职级
     */
    @ApiModelProperty(value = "职级")
    private String staffRank;

    /**
     * 专业特长
     */
    @ApiModelProperty(value = "专业特长")
    private String staffProfession;

    /**
     * 培训履历
     */
    @ApiModelProperty(value = "培训履历")
    private String staffTraining;

    /**
     * 工作总结
     */
    @ApiModelProperty(value = "工作总结")
    private String staffWorksummary;

    /**
     * 专业发展
     */
    @ApiModelProperty(value = "专业发展")
    private String staffDevelop;

    /**
     * 配偶姓名
     */
    @ApiModelProperty(value = "配偶姓名")
    private String staffSpousesName;

    /**
     * 配偶身份证号
     */
    @ApiModelProperty(value = "配偶身份证号")
    private String staffSpousesIdcard;

    /**
     * 配偶联系电话
     */
    @ApiModelProperty(value = "配偶联系电话")
    private String staffSpousesPhone;

    /**
     * 父亲姓名
     */
    @ApiModelProperty(value = "父亲姓名")
    private String staffFatherName;

    /**
     * 父亲身份证号
     */
    @ApiModelProperty(value = "父亲身份证号")
    private String staffFatherIdcard;

    /**
     * 父亲电话
     */
    @ApiModelProperty(value = "父亲电话")
    private String staffFatherPhone;

    /**
     * 母亲姓名
     */
    @ApiModelProperty(value = "母亲姓名")
    private String staffMotherName;

    /**
     * 母亲身份证号
     */
    @ApiModelProperty(value = "母亲身份证号")
    private String staffMotherIdcard;

    /**
     * 母亲联系电话
     */
    @ApiModelProperty(value = "母亲联系电话")
    private String staffMotherPhone;
    /**
     * 员工年龄
     */
    @Transient
    @ApiModelProperty(value = "员工年龄（只读）")
    private Integer staffAge;
}